from scipy.stats import gaussian_kde
import numpy as np
import matplotlib.pyplot as plt

# 假设我们有二维数据
data = np.random.rand(100, 2)  # 示例数据，替换为你实际的数据

# 计算核密度估计
kde = gaussian_kde(data)

# 创建网格数据
x, y = np.mgrid[0:1:.01, 0:1:.01]  # 你可以调整网格范围和步长
pos = np.empty(x.shape + (2,))
pos[:, :, 0] = x
pos[:, :, 1] = y

# 计算并绘制核密度
density = kde(pos)
plt.figure(figsize=(8, 6))
plot = plt.imshow(density.T, cmap='viridis', origin='lower')
cbar = plt.colorbar(plot)
plt.title('Gaussian Kernel Density Estimation')
plt.xlabel('X-axis'), plt.ylabel('Y-axis')
plt.show()  # 显示图像